package com.wqr.controller;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.wqr.pojo.Store;
import com.wqr.service.StoreService;
import com.wqr.service.StoreService;

@Controller
public class StoreController {
	@Autowired
    public StoreService storeService;
	
	@RequestMapping("/manageStore")
	public String store(Model model) throws Exception {
		List<Store> list = storeService.list();
		model.addAttribute("itemList", list);
	    return "manageStore"; 
	}
	@RequestMapping("/addStore")
	@ResponseBody// 返回的数据不是html标签的页面，而是其他某种格式的数据时（如json、xml等）使用；
	public int addStore(@RequestBody //读取Request请求的body部分数据,再把HttpMessageConverter返回的对象数据绑定到 controller中方法的参数上
			Store store) throws Exception {
		//IsLogin(session);
		int a = storeService.insertStore(store);
		return a;
	}
	//@RequestMapping(value="/deleteStore/{userStateId}",method=RequestMethod.GET)
	@RequestMapping("/deleteStore")
	@ResponseBody// 返回的数据不是html标签的页面，而是其他某种格式的数据时（如json、xml等）使用；
	public int deleteStore(@RequestBody //读取Request请求的body部分数据,再把HttpMessageConverter返回的对象数据绑定到 controller中方法的参数上
			Store store) throws Exception {
		//@pathVariable //将 URL 中占位符参数绑定到控制器处理方法的入参中 URL 中的 {xxx} 占位符可以通过@PathVariable("xxx") 绑定到操作方法的入参中。
		//(userStateId) Integer userStateId) throws Exception {
		//IsLogin(session);
		int a = storeService.delectStore(store.getStoreId());
		return a;
	}
	@RequestMapping("/updateStore")
	@ResponseBody
	public Store updateStore(@RequestBody Store store) throws Exception {
		//IsLogin(session);
		Store itemList = storeService.selectByPrimaryKey(store.getStoreId());
		return itemList;
	}
	@RequestMapping("/saveStore")
	@ResponseBody// 返回的数据不是html标签的页面，而是其他某种格式的数据时（如json、xml等）使用；
	public int saveStore(@RequestBody Store store) throws Exception {
		//IsLogin(session);
		int a = storeService.updateStore(store);
		return a;
	}
	@RequestMapping("/searchStore")
	@ResponseBody
	public List<Store> searchStore(@RequestBody Store store) throws Exception {
		if(store.getStoreName() == ""){
			store.setStoreName(null);
		}
		if(store.getStoreAddress() == ""){
			store.setStoreAddress(null);
		}
		if(store.getStoreScore() == ""){
			store.setStoreScore(null);
		}
		if(store.getStorePhone() == ""){
			store.setStorePhone(null);
		}
		if(store.getStoreCharge() == ""){
			store.setStoreCharge(null);
		}
		List<Store> itemList = storeService.selectStore(store);
	    return itemList;
	}
	@RequestMapping("/searchAllStore")
	@ResponseBody
	public List<Store> searchAllStore() throws Exception {
		List<Store> itemList = storeService.list();
	    return itemList;
	}
}
